feat: add support for npm/pnpm workspaces [SIM-130]#1153
Merged
Conversation
e2a9471 to
c6dbc28
Compare
50b11ef to
3bd7f6c
Compare
6 tasks
6 tasks
429f619 to
2cb8499
Compare
This comment has been minimized.
This comment has been minimized.
2cb8499 to
afedd03
Compare
de9c3ed to
b32d7ab
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
b95cb85 to
a448d7f
Compare
This comment has been minimized.
This comment has been minimized.
c8df01c to
606bc25
Compare
This comment has been minimized.
This comment has been minimized.
38aa5e8 to
38c726a
Compare
This is meant to be used in tests which currently suffer from huge import resolution conflicts. Instead of letting fixtures and test code attempt to import the same files (and failing to do so), we should just pack the CLI and let it output the project structure. This makes it possible to test project parsing in real world scenarios, since even the devdeps of the CLI will not be resolvable (which so far has prevented things like proper testing for the file loaders). In order to make project parsing work without authentication, the PW code bundle upload was separated into a different bundle. Both the deploy and test commands were updated to support this. As a result they are now able to report more accurate status since the upload is separate from bundling, and the new project parsing command doesn't need authentication. TODO: Local code bundles are no longer getting cleaned up (deleted) after they have been uploaded. This needs fixing.
…y became an issue The proxy utility is now in a separate file which gets rid of the circular dep. There may be more but for now this fixes the issue.
Files above the workspace root are not bundleable.
It's not relevant and it messes up paths.
Instead of relying on memory and dependencies being shared between the CLI and test fixtures, which leads to various issues, we add new debug commands to the CLI that allow us to inspect the state of a fixture or file. We inspect the output of the command instead of relying on shared memory. Various changes were required to make this work.
…n to keep it fresh
… pw-test e2e tests work
…ing a larger runner
e664d30 to
4951ba4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Affected Components
Notes for the Reviewer
This PR introduces support for npm/pnpm workspaces, and other types of project structures where the checkly configuration file is not in the same folder as
package.json.No additional configuration is introduced. Workspace support is automatic for projects that use workspaces.
Other notable additions:
jsx/tsxsince it was crucial for testing workspaces.exportsis now supported.Known limitations:
workspace:*dependencies in a the workspace's root package.json file is currently not supported. This will be addressed later.importsis not yet supported.package.jsonfile.New Dependency Submission